package com.ruoyi.edh.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.domain.BaseEntity;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.SearchEntity;

/**
 * 易订货-优惠券记录对象 edh_coupon_log
 * 
 * @author xxx
 * @date 2020-09-02
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@ApiModel("易订货-优惠券记录")
public class EdhCouponLog extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键id */
    @ApiModelProperty("${comment}")
    private Long id;

    /** 优惠券id */
    @Excel(name = "优惠券id")
    @ApiModelProperty("优惠券id")
    private Long couponId;

    /** 发放类型 1 满减券 2 折扣券 3无门槛券 */
    @Excel(name = "发放类型 1 满减券 2 折扣券 3无门槛券")
    @ApiModelProperty("发放类型 1 满减券 2 折扣券 3无门槛券")
    private Integer type;

    /** 用户id */
    @Excel(name = "用户id")
    @ApiModelProperty("用户id")
    private Long userId;

    /** 订单id */
    @Excel(name = "订单id")
    @ApiModelProperty("订单id")
    private Long orderId;

    /** 使用时间 */
    @JsonFormat(pattern = "yyyy-MM-dd  HH:mm:ss")
    @Excel(name = "使用时间", width = 30, dateFormat = "yyyy-MM-dd")
    @ApiModelProperty("使用时间")
    private Date useTime;

    /** 生效时间 */
    @JsonFormat(pattern = "yyyy-MM-dd  HH:mm:ss")
    @Excel(name = "生效时间", width = 30, dateFormat = "yyyy-MM-dd")
    @ApiModelProperty("生效时间")
    private Date useStartTime;

    /** 失效时间 */
    @JsonFormat(pattern = "yyyy-MM-dd  HH:mm:ss")
    @Excel(name = "失效时间", width = 30, dateFormat = "yyyy-MM-dd")
    @ApiModelProperty("失效时间")
    private Date useEndTime;

    /** 优惠券兑换码 */
    @Excel(name = "优惠券兑换码")
    @ApiModelProperty("优惠券兑换码")
    private String code;

    /** 状态 0未使用1已使用2已过期 */
    @Excel(name = "状态 0未使用1已使用2已过期")
    @ApiModelProperty("状态 0未使用1已使用2已过期")
    private Integer status;


}
